<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>

<title>Substitution (randoop 4.1.0 API)</title>

<link rel="stylesheet" type="text/css" href="../../javadocstyle.css" title="Style">
<script type="text/javascript" src="../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="Substitution (randoop 4.1.0 API)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":10,"i1":10,"i2":9,"i3":9,"i4":9,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../index-all.html">Index</a></li>
<li><a href="../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../randoop/types/ReferenceType.html" title="class in randoop.types"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../randoop/types/Type.html" title="class in randoop.types"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../index.html?randoop/types/Substitution.html" target="_top">Frames</a></li>
<li><a href="Substitution.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">randoop.types</div>
<h2 title="Class Substitution" class="title">Class Substitution&lt;T&gt;</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>randoop.types.Substitution&lt;T&gt;</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="typeNameLabel">Substitution&lt;T&gt;</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
<div class="block">Manages the substitution of concrete types for type variables and wildcards in an instantiation
 of a generic class as a parameterized type.

 <p>Because a substitution represents the instantiation from a generic class to a parameterized
 type, an instance is built using <a href="../../randoop/types/Substitution.html#forArgs-java.util.List-java.util.List-"><code>forArgs(List, List)</code></a> and then not modified.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../randoop/types/TypeVariable.html" title="class in randoop.types">TypeVariable</a>,<a href="../../randoop/types/Substitution.html" title="type parameter in Substitution">T</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/types/Substitution.html#map">map</a></span></code>
<div class="block">The substitution map</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>,<a href="../../randoop/types/Substitution.html" title="type parameter in Substitution">T</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/types/Substitution.html#rawMap">rawMap</a></span></code>
<div class="block">map on reflection types - used for testing bounds</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../randoop/types/Substitution.html#Substitution--">Substitution</a></span>()</code>
<div class="block">Create an empty substitution.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../randoop/types/Substitution.html#Substitution-randoop.types.Substitution-">Substitution</a></span>(<a href="../../randoop/types/Substitution.html" title="class in randoop.types">Substitution</a>&lt;<a href="../../randoop/types/Substitution.html" title="type parameter in Substitution">T</a>&gt;&nbsp;substitution)</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/types/Substitution.html#equals-java.lang.Object-">equals</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;obj)</code></td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="../../randoop/types/Substitution.html" title="class in randoop.types">Substitution</a>&lt;<a href="../../randoop/types/Substitution.html" title="type parameter in Substitution">T</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/types/Substitution.html#extend-randoop.types.Substitution-">extend</a></span>(<a href="../../randoop/types/Substitution.html" title="class in randoop.types">Substitution</a>&lt;<a href="../../randoop/types/Substitution.html" title="type parameter in Substitution">T</a>&gt;&nbsp;substitution)</code>
<div class="block">Extends this substitution by adding the entries of another substitution.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../../randoop/types/Substitution.html" title="class in randoop.types">Substitution</a>&lt;T&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/types/Substitution.html#forArg-randoop.types.TypeVariable-T-">forArg</a></span>(<a href="../../randoop/types/TypeVariable.html" title="class in randoop.types">TypeVariable</a>&nbsp;parameter,
      T&nbsp;argument)</code>&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../../randoop/types/Substitution.html" title="class in randoop.types">Substitution</a>&lt;T&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/types/Substitution.html#forArgs-java.util.List-java.util.List-">forArgs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../randoop/types/TypeVariable.html" title="class in randoop.types">TypeVariable</a>&gt;&nbsp;parameters,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;T&gt;&nbsp;arguments)</code>
<div class="block">Create a substitution from the type parameters and the list of arguments.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../../randoop/types/Substitution.html" title="class in randoop.types">Substitution</a>&lt;T&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/types/Substitution.html#forArgs-java.util.List-T...-">forArgs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../randoop/types/TypeVariable.html" title="class in randoop.types">TypeVariable</a>&gt;&nbsp;parameters,
       T...&nbsp;arguments)</code>
<div class="block">Create a substitution from the type parameters to the corresponding type arguments.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../randoop/types/Substitution.html" title="type parameter in Substitution">T</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/types/Substitution.html#get-java.lang.reflect.Type-">get</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>&nbsp;parameter)</code>
<div class="block">Returns the value for the given <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect"><code>Type</code></a></div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="../../randoop/types/Substitution.html" title="type parameter in Substitution">T</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/types/Substitution.html#get-randoop.types.TypeVariable-">get</a></span>(<a href="../../randoop/types/TypeVariable.html" title="class in randoop.types">TypeVariable</a>&nbsp;parameter)</code>
<div class="block">Returns the concrete type mapped from the type variable by this substitution.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../randoop/types/TypeVariable.html" title="class in randoop.types">TypeVariable</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/types/Substitution.html#getVariables--">getVariables</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/types/Substitution.html#hashCode--">hashCode</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/types/Substitution.html#isConsistentWith-randoop.types.Substitution-">isConsistentWith</a></span>(<a href="../../randoop/types/Substitution.html" title="class in randoop.types">Substitution</a>&lt;<a href="../../randoop/types/Substitution.html" title="type parameter in Substitution">T</a>&gt;&nbsp;substitution)</code>
<div class="block">Indicates whether this substitution is disjoint from another substitution, or that if they both
 map the same type variable, they map it to the same type.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/types/Substitution.html#isEmpty--">isEmpty</a></span>()</code>
<div class="block">Indicates whether this substitution has any variable-type pairs.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/types/Substitution.html#print--">print</a></span>()</code>
<div class="block">Print the entries of this substitution to standard out.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>private void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/types/Substitution.html#put-randoop.types.TypeVariable-T-">put</a></span>(<a href="../../randoop/types/TypeVariable.html" title="class in randoop.types">TypeVariable</a>&nbsp;typeParameter,
   <a href="../../randoop/types/Substitution.html" title="type parameter in Substitution">T</a>&nbsp;type)</code>
<div class="block">Add a type variable to concrete type mapping to the substitution.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/types/Substitution.html#toString--">toString</a></span>()</code></td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a name="map">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>map</h4>
<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../randoop/types/TypeVariable.html" title="class in randoop.types">TypeVariable</a>,<a href="../../randoop/types/Substitution.html" title="type parameter in Substitution">T</a>&gt; map</pre>
<div class="block">The substitution map</div>
</li>
</ul>
<a name="rawMap">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>rawMap</h4>
<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>,<a href="../../randoop/types/Substitution.html" title="type parameter in Substitution">T</a>&gt; rawMap</pre>
<div class="block">map on reflection types - used for testing bounds</div>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="Substitution--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>Substitution</h4>
<pre>public&nbsp;Substitution()</pre>
<div class="block">Create an empty substitution.</div>
</li>
</ul>
<a name="Substitution-randoop.types.Substitution-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>Substitution</h4>
<pre>public&nbsp;Substitution(<a href="../../randoop/types/Substitution.html" title="class in randoop.types">Substitution</a>&lt;<a href="../../randoop/types/Substitution.html" title="type parameter in Substitution">T</a>&gt;&nbsp;substitution)</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="forArg-randoop.types.TypeVariable-java.lang.Object-">
<!--   -->
</a><a name="forArg-randoop.types.TypeVariable-T-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>forArg</h4>
<pre>public static&nbsp;&lt;T&gt;&nbsp;<a href="../../randoop/types/Substitution.html" title="class in randoop.types">Substitution</a>&lt;T&gt;&nbsp;forArg(<a href="../../randoop/types/TypeVariable.html" title="class in randoop.types">TypeVariable</a>&nbsp;parameter,
                                         T&nbsp;argument)</pre>
</li>
</ul>
<a name="forArgs-java.util.List-java.lang.Object:A-">
<!--   -->
</a><a name="forArgs-java.util.List-T...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>forArgs</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/SafeVarargs.html?is-external=true" title="class or interface in java.lang">@SafeVarargs</a>
public static&nbsp;&lt;T&gt;&nbsp;<a href="../../randoop/types/Substitution.html" title="class in randoop.types">Substitution</a>&lt;T&gt;&nbsp;forArgs(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../randoop/types/TypeVariable.html" title="class in randoop.types">TypeVariable</a>&gt;&nbsp;parameters,
                                                       T...&nbsp;arguments)</pre>
<div class="block">Create a substitution from the type parameters to the corresponding type arguments. Requires
 that the number of parameters and arguments agree.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - the substituted type</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>parameters</code> - the type parameters</dd>
<dd><code>arguments</code> - the type arguments</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>Substitution</code> mapping each type variable to a type argument</dd>
</dl>
</li>
</ul>
<a name="forArgs-java.util.List-java.util.List-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>forArgs</h4>
<pre>public static&nbsp;&lt;T&gt;&nbsp;<a href="../../randoop/types/Substitution.html" title="class in randoop.types">Substitution</a>&lt;T&gt;&nbsp;forArgs(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../randoop/types/TypeVariable.html" title="class in randoop.types">TypeVariable</a>&gt;&nbsp;parameters,
                                          <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;T&gt;&nbsp;arguments)</pre>
<div class="block">Create a substitution from the type parameters and the list of arguments.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - the argument type</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>parameters</code> - the type parameters</dd>
<dd><code>arguments</code> - the type arguments</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the substitution that maps the type parameters to the corresponding type argument</dd>
</dl>
</li>
</ul>
<a name="equals-java.lang.Object-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>equals</h4>
<pre>public&nbsp;boolean&nbsp;equals(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;obj)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the substitution maps are identical and false otherwise</dd>
</dl>
</li>
</ul>
<a name="hashCode--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hashCode</h4>
<pre>public&nbsp;int&nbsp;hashCode()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
</dl>
</li>
</ul>
<a name="toString--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toString</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a string representation of the substitution</dd>
</dl>
</li>
</ul>
<a name="isConsistentWith-randoop.types.Substitution-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isConsistentWith</h4>
<pre>public&nbsp;boolean&nbsp;isConsistentWith(<a href="../../randoop/types/Substitution.html" title="class in randoop.types">Substitution</a>&lt;<a href="../../randoop/types/Substitution.html" title="type parameter in Substitution">T</a>&gt;&nbsp;substitution)</pre>
<div class="block">Indicates whether this substitution is disjoint from another substitution, or that if they both
 map the same type variable, they map it to the same type. This is the test for whether this
 substitution can be extended by the other substitution using <a href="../../randoop/types/Substitution.html#extend-randoop.types.Substitution-"><code>extend(Substitution)</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>substitution</code> - the other substitution to check for consistency with this substitution</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the the substitutions are consistent, false otherwise</dd>
</dl>
</li>
</ul>
<a name="extend-randoop.types.Substitution-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>extend</h4>
<pre>public&nbsp;<a href="../../randoop/types/Substitution.html" title="class in randoop.types">Substitution</a>&lt;<a href="../../randoop/types/Substitution.html" title="type parameter in Substitution">T</a>&gt;&nbsp;extend(<a href="../../randoop/types/Substitution.html" title="class in randoop.types">Substitution</a>&lt;<a href="../../randoop/types/Substitution.html" title="type parameter in Substitution">T</a>&gt;&nbsp;substitution)</pre>
<div class="block">Extends this substitution by adding the entries of another substitution. If both substitutions
 contain the same type variable, they must map to the same type.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>substitution</code> - the substitution to add to this substitution</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new substitution that is this substitution extended by the given substitution</dd>
</dl>
</li>
</ul>
<a name="get-randoop.types.TypeVariable-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>get</h4>
<pre>public&nbsp;<a href="../../randoop/types/Substitution.html" title="type parameter in Substitution">T</a>&nbsp;get(<a href="../../randoop/types/TypeVariable.html" title="class in randoop.types">TypeVariable</a>&nbsp;parameter)</pre>
<div class="block">Returns the concrete type mapped from the type variable by this substitution. Returns null if
 the variable is not in the substitution.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>parameter</code> - the variable</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the concrete type mapped from the variable in this substitution, or null if there is no
     type for the variable</dd>
</dl>
</li>
</ul>
<a name="get-java.lang.reflect.Type-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>get</h4>
<pre>public&nbsp;<a href="../../randoop/types/Substitution.html" title="type parameter in Substitution">T</a>&nbsp;get(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>&nbsp;parameter)</pre>
<div class="block">Returns the value for the given <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect"><code>Type</code></a></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>parameter</code> - the type variable</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the value for the type variable, or null if there is none</dd>
</dl>
</li>
</ul>
<a name="getVariables--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getVariables</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../randoop/types/TypeVariable.html" title="class in randoop.types">TypeVariable</a>&gt;&nbsp;getVariables()</pre>
</li>
</ul>
<a name="print--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>print</h4>
<pre>public&nbsp;void&nbsp;print()</pre>
<div class="block">Print the entries of this substitution to standard out.</div>
</li>
</ul>
<a name="put-randoop.types.TypeVariable-java.lang.Object-">
<!--   -->
</a><a name="put-randoop.types.TypeVariable-T-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>put</h4>
<pre>private&nbsp;void&nbsp;put(<a href="../../randoop/types/TypeVariable.html" title="class in randoop.types">TypeVariable</a>&nbsp;typeParameter,
                 <a href="../../randoop/types/Substitution.html" title="type parameter in Substitution">T</a>&nbsp;type)</pre>
<div class="block">Add a type variable to concrete type mapping to the substitution. Only called by <a href="../../randoop/types/Substitution.html#forArgs-java.util.List-java.util.List-"><code>forArgs(List, List)</code></a> and <a href="../../randoop/types/Substitution.html#forArgs-java.util.List-T...-"><code>forArgs(List, Object[])</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>typeParameter</code> - the type variable</dd>
<dd><code>type</code> - the concrete type</dd>
</dl>
</li>
</ul>
<a name="isEmpty--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>isEmpty</h4>
<pre>public&nbsp;boolean&nbsp;isEmpty()</pre>
<div class="block">Indicates whether this substitution has any variable-type pairs.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if there are no substitution pairs, false otherwise</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../index-all.html">Index</a></li>
<li><a href="../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../randoop/types/ReferenceType.html" title="class in randoop.types"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../randoop/types/Type.html" title="class in randoop.types"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../index.html?randoop/types/Substitution.html" target="_top">Frames</a></li>
<li><a href="Substitution.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>
